﻿using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using RBAC_Get.API.Infrastructures.Interfaces;
using Return.Enum;
using System.Net;
using System.Net.Mail;
using THE_WIND_RISES.Common.Dtos;

namespace RBAC_Get.API.Controllers
{
    [Route("api/[controller]/[action]")]
    [ApiController]
    public class EmailControllers : ControllerBase
    {

        /// <summary>
        /// 返回邮件发送状态.
        /// </summary>
        /// <param name="emailAddress">邮件地址.</param>
        /// <returns></returns>
        [HttpGet]
        public void Create(string[] args)
        {
            try
            {
                //实例化一个发送邮件类。
                MailMessage mailMessage = new MailMessage();
                //发件人邮箱地址，方法重载不同，可以根据需求自行选择。
                mailMessage.From = new MailAddress("m15049992920@163.com");
                //收件人邮箱地址。
                mailMessage.To.Add(new MailAddress("2082103448@qq.com"));
                //邮件标题。
                mailMessage.Subject = "发送邮件测试";
                //邮件内容。
                mailMessage.Body = "这是我给你发送的第一份邮件哦！";

                //实例化一个SmtpClient类。
                SmtpClient client = new SmtpClient();
                //在这里我使用的是yeah邮箱，所以是smtp.qq.com，如果你使用的是126邮箱，那么就是smtp.126.com。
                client.Host = "smtp.yeah.net";
                //使用安全加密连接。
                client.EnableSsl = true;
                //不和请求一块发送。
                client.UseDefaultCredentials = false;
                //验证发件人身份(发件人的邮箱，邮箱里的生成授权码);
                client.Credentials = new NetworkCredential("m15049992920", "RSdnVSE3KKmK3Yic");//前缀是指@之前的字符
                //发送
                client.Send(mailMessage);
                Console.WriteLine("发送邮件成功!");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
           
        }

       
    }
}
